Cookie クッキー
パスワードなどユーザー自身がWebブラウザに入力した情報を一時的に保存
HTTP Hypertext Transfer Protocol
において
Webブラウザ Web Browser
と
Webサーバ
間で状態を管理する
Protocol プロトコル
そこで用いられる
Webブラウザ Web Browser
上に保存された情報のこと
Webブラウザ Web Browser
が個人のIDなどを保存し、最初のアクセス時にこのIdなどを一緒に送ることで、通信の手間が省ける
目的
HTTP Hypertext Transfer Protocol
が
ステートレス
だけどCookieを使って
セッション Session
管理をすることで、擬似的に状態を維持可能に
仕組み
Webサーバ
から
Webブラウザ Web Browser
へHTTPレスポンスのヘッダを利用して小さな情報を送る。
この情報は「名前=値」の組み合わせ
Cokkie: user=kiichi; pass=webtext;
毎回
Webサーバ
に自動送信される
欠点
セッションID
の固定化攻撃に弱い
保持できる値の数や数や文字列長に限りあり
利用者本人が参照・変更できる
秘密情報の確保に向かない
これから
Third-Party Cookie
の扱いが厳しくなってる
Safari
なら、cookie、
localStorage
など7日の上限
Full Third-Party Cookie Blocking and More | WebKit
2020-03-31のJS: TypeScript 3.9 Beta、Safari 13.1、CS Web Securityコース - JSer.info
そもそも、なぜ脱Cookie化する動きが出てるの?
Privacy Sandbox
に変わっていくっぽい
Cookieとセッションをちゃんと理解する - Qiita
Cookieとセッション管理 - Qiita
4歳娘「パパ、セッションとCookieってなあに?」 - Qiita
最新のブラウザで変わるCookieの取り扱いやPrivacyの考え方 - Speaker Deck